]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
search: Don't throw if provider directories don't exist
authorColin Walters <walters@verbum.org>
Sat, 27 Jul 2013 14:55:57 +0000 (10:55 -0400)
committerColin Walters <walters@verbum.org>
Sat, 27 Jul 2013 14:58:36 +0000 (10:58 -0400)
There's no /usr/local/share/gnome-shell/search-providers, so don't
throw if we don't find it.

js/ui/remoteSearch.js

index f998a2f0661eeb8cc122c1e496a111a5ce28b66f..b1f485e137e59985d8d887cfacb42c07e6a50d40 100644 (file)
@@ -116,11 +116,18 @@ function loadRemoteSearchProviders(addProviderCallback) {
     dataDirs.forEach(function(dataDir) {
         let path = GLib.build_filenamev([dataDir, 'gnome-shell', 'search-providers']);
         let dir = Gio.File.new_for_path(path);
-        let fileEnum = dir.enumerate_children('standard::name,standard::type',
+        let fileEnum;
+        try {
+            fileEnum = dir.enumerate_children('standard::name,standard::type',
                                               Gio.FileQueryInfoFlags.NONE, null);
-        let info;
-        while ((info = fileEnum.next_file(null)))
-            loadRemoteSearchProvider(fileEnum.get_child(info));
+        } catch (e) {
+            fileEnum = null;
+        }
+        if (fileEnum != null) {
+            let info;
+            while ((info = fileEnum.next_file(null)))
+                loadRemoteSearchProvider(fileEnum.get_child(info));
+        }
     });
 
     let searchSettings = new Gio.Settings({ schema: Search.SEARCH_PROVIDERS_SCHEMA });